<!DOCTYPE html>
<html>
<head>
  <link rel='stylesheet' href='qunit/qunit.css' type='text/css'/>
  <script type='text/javascript' src='../editor/lib/jquery.js'></script>
  <script type='text/javascript' src='../editor/src/units.js'></script>
  <script type='text/javascript' src='qunit/qunit.js'></script>  
  <script type='text/javascript'>
  $(function() {
  	// log function
  	QUnit.log = function(result, message) {
		if (window.console && window.console.log) {
			window.console.log(result +' :: '+ message);
		}
	};

    function setUp() {
		svgedit.units.init({
			getBaseUnit: function() { return "cm"; },
			getHeight: function() { return 600; },
			getWidth: function() { return 800; },
			getRoundDigits: function() { return 4; },
			getElement:function(elementId){ return document.getElementById(elementId);}
		});
	}
	
	test('Test svgedit.units package', function() {
		expect(2);
		ok(svgedit.units);
		equals(typeof svgedit.units, typeof {});
	});

	test('Test svgedit.units.shortFloat()', function() {
		expect(7);

		setUp();
		
		ok(svgedit.units.shortFloat);
		equals(typeof svgedit.units.shortFloat, typeof function(){});

		var shortFloat = svgedit.units.shortFloat;
		equals(shortFloat(0.00000001), 0);
		equals(shortFloat(1), 1);
		equals(shortFloat(3.45678), 3.4568);
		equals(shortFloat(1.23443), 1.2344);
		equals(shortFloat(1.23455), 1.2346);
	});

	test('Test svgedit.units.isValidUnit()', function() {
		expect(18);

		setUp();
		
		ok(svgedit.units.isValidUnit);
		equals(typeof svgedit.units.isValidUnit, typeof function(){});

		var isValidUnit = svgedit.units.isValidUnit;
		ok(isValidUnit("0"));
		ok(isValidUnit("1"));
		ok(isValidUnit("1.1"));
		ok(isValidUnit("-1.1"));
		ok(isValidUnit(".6mm"));
		ok(isValidUnit("-.6cm"));
		ok(isValidUnit("6000in"));
		ok(isValidUnit("6px"));
		ok(isValidUnit("6.3pc"));
		ok(isValidUnit("-0.4em"));
		ok(isValidUnit("-0.ex"));
		ok(isValidUnit("40.123%"));


        equals(isValidUnit("id","uniqueId",document.getElementById("uniqueId")), true);
        equals(isValidUnit("id","newId",document.getElementById("uniqueId")), true);
        equals(isValidUnit("id","uniqueId"), false);
        equals(isValidUnit("id","uniqueId",document.getElementById("nonUniqueId")), false);
	});
  });
  </script>
</head>  
<body>  
  <h1 id='qunit-header'>Unit Tests for units.js</h1>
  <h2 id='qunit-banner'></h2>
  <h2 id='qunit-userAgent'></h2>
  <ol id='qunit-tests'>
  </ol>
  <div id='anchor' style='visibility:hidden'>
  </div>
    <div id="elementsContainer">
        <div id='uniqueId' style='visibility:hidden'></div>
        <div id='nonUniqueId' style='visibility:hidden'></div>
    </div>

  </div>
</body>  
</html>
